.profile-page {
  padding: 40px;
  background: #fff;
  min-height: calc(100vh - 64px);
  max-width: 1000px;
  margin: 0 auto;

  .profile-header {
    width: 100%;
    text-align: center;
    padding: 40px 0;
    margin-bottom: 40px;
    position: relative;

    &::after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 60px;
      height: 3px;
      background: #1890ff;
      border-radius: 2px;
    }

    .avatar-wrapper {
      position: relative;
      display: inline-block;
      margin-bottom: 24px;

      .ant-avatar {
        border: 2px solid #f0f0f0;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
        transition: all 0.3s ease;
      }

      .avatar-edit-button {
        position: absolute;
        right: 0;
        bottom: 0;
        width: 32px;
        height: 32px;
        background: rgba(0, 0, 0, 0.5);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        color: #fff;
        transition: all 0.3s;

        &:hover {
          background: rgba(0, 0, 0, 0.7);

          .avatar-tip {
            opacity: 1;
            transform: translateY(0);
          }
        }

        .anticon {
          font-size: 16px;
        }

        .avatar-tip {
          position: absolute;
          bottom: -30px;
          left: 50%;
          transform: translateX(-50%) translateY(5px);
          white-space: nowrap;
          background: rgba(0, 0, 0, 0.75);
          padding: 4px 8px;
          border-radius: 4px;
          font-size: 12px;
          opacity: 0;
          transition: all 0.3s;
        }
      }

      &:hover {
        .avatar-edit-button {
          opacity: 1;
        }

        .ant-avatar {
          transform: translateY(-2px);
          box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
        }
      }
    }

    .user-info {
      .ant-typography {
        margin: 0;
        color: #262626;
        font-size: 24px;
        font-weight: 500;
      }

      .member-status {
        margin-top: 12px;
        
        .anticon {
          color: #1890ff;
          font-size: 16px;
        }

        .ant-typography {
          color: #1890ff;
          font-size: 14px;
          font-weight: normal;
        }
      }
    }
  }

  .profile-details {
    width: 100%;

    .ant-card {
      border-radius: 12px;
      border: 1px solid #f0f0f0;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
      transition: all 0.3s ease;

      &:hover {
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.06);
      }

      .ant-card-head {
        padding: 24px;
        border-bottom: 1px solid #f0f0f0;

        .ant-card-head-title {
          font-size: 18px;
          color: #262626;
        }

        .ant-btn-link {
          color: #1890ff;
          font-size: 14px;
          
          &:hover {
            color: #40a9ff;
          }
        }
      }

      .info-list {
        padding: 8px 24px;

        .ant-list-item {
          padding: 16px 0;
          border-bottom: 1px solid #f0f0f0;

          .ant-typography {
            &:first-child {
              color: #8c8c8c;
              width: 100px;
              font-size: 14px;
            }

            &:last-child {
              color: #262626;
              font-size: 14px;
              margin-left: 32px;
              flex: 1;
            }
          }

          &:last-child {
            border-bottom: none;
          }
        }
      }
    }

    .edit-form {
      padding: 24px;

      .ant-form-item-label {
        label {
          font-size: 14px;
          color: #8c8c8c;
        }
      }

      .ant-input {
        border-radius: 6px;
        border-color: #d9d9d9;
        transition: all 0.3s ease;

        &:hover, &:focus {
          border-color: #40a9ff;
          box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.1);
        }
      }

      .form-buttons {
        margin-top: 32px;
        text-align: right;

        .ant-btn {
          height: 36px;
          padding: 0 20px;
          font-size: 14px;
          border-radius: 6px;

          &:first-child {
            margin-right: 12px;
          }
        }
      }
    }
  }

  .page-header {
    padding: 16px 0;
    display: flex;
    justify-content: flex-start;
    
    .ant-btn-link {
      padding-left: 0;
      font-size: 16px;
      
      .anticon {
        margin-right: 8px;
      }
    }
  }
} 